HAL DCACHE migration: List of applicable concepts ¶
This section provides information about the HAL DCACHE applicable architecture concepts.
Concepts for DCACHE ¶
|
Concept |
Description |
|---|---|
|
|
|
|
|
|
|
Two functions to set and get user data are available:
|
|
|
Individual callback registration APIs replace global register and unregister functions |
The callback registration is handled by specific functions for each DCACHE event. These functions are used to register callback functions for different DCACHE events. |
|
All hardware macros have been removed from the HAL DCACHE driver, and equivalent services are ensured through the LL APIs. |
|
|
The DCACHE state machine is reworked to ensure transitions of the peripheral functional states. |
|
|
The HAL DCACHE functions were updated to return:
|
|
|
The HAL error handling mechanisms have been redesigned to improve the detection, reporting, and handling of errors. This provides more detailed and consistent error information. |
|
|
All TypeDef parts of the HAL DCACHE driver have been removed and replaced by
|
|
|
Const keywords have been added to non-modifiable pointers to ensure that either the pointer itself or the data it points to cannot be modified. This enhances code safety and readability, prevents unintended modifications, and renders code more robust and maintainable. |
|
|
The parameters and state are checked using
|
|
|
Replace Finite Parameter Defines (Including PPP Instances) with Enum Types at HAL Levels. |
Finite parameters (including DCACHE instances) have been converted into enumerated types (enums) at HAL level. This improves code readability, maintainability, and type safety. |
|
Add HAL_PPP Prefix to All HAL Peripheral APIs (Defines, Macros, Types, and Functions). |
HAL DCACHE resources and data structures are started with the prefix HAL. |
Other HAL DCACHE changes ¶
|
Concept |
Consideration |
|---|---|
|
Replace address parameters so that the address is passed as a value rather than as a pointer. |
Change the parameter type from
Example :
|
|
Add new services to manage the Burst configuration |
Add
|